using FeMM.Common.Checks;
using FeMM.Grasshopper.DataTypes;
using System;
using System.Runtime.Versioning;

namespace FeMM.Grasshopper.Components.Design
{
#if NETCOREAPP
    [SupportedOSPlatform("windows")]
#endif
    public class AISC360_10SteelPrefsComponent : SteelPrefsComponent
    {
        /// <summary>
        /// Initializes a new instance of the MixedSectionComponent class.
        /// </summary>
        public AISC360_10SteelPrefsComponent()
          : base("AISC360-10 Steel prefs", "AISC360-10P", "Define preferences to check the steel elements according to AISC360-10 with SAP2000")
        {
        }

        protected override Forms.SteelPrefsForm GetForm(GH_SteelPrefs prefs)
        {
            return new Forms.AISC360_10SteelPrefsForm(prefs == null ? null : (AISC360SteelPrefs)prefs.Value);
        }

        protected override GH_SteelPrefs CreateGHSteelPrefs(SteelPrefs prefs)
        {
            return new GH_AISC360_10SteelPrefs((AISC360SteelPrefs)prefs);
        }

        protected override GH_SteelPrefs CreateGHSteelPrefs()
        {
            return new GH_AISC360_10SteelPrefs();
        }

        /// <summary>
        /// Provides an Icon for the component.
        /// </summary>
        protected override System.Drawing.Bitmap Icon => Properties.Resources.AISC360_10SteelPrefsIcon;

        /// <summary>
        /// Gets the unique ID for this component. Do not change this ID after release.
        /// </summary>
        public override Guid ComponentGuid => new("95226D12-0E80-4DEC-94D5-93FD90CFD443");
    }
}
303 files24 directories